home *** CD-ROM | disk | FTP | other *** search
- #!/bin/sh
- # Copyright (c) 2004-2005 Gentoo Foundation
- # Distributed under the terms of the GNU General Public License v2
- # $Header$
-
- # Contributed by Roy Marples (uberlord@gentoo.org)
-
- # Instead of writing new functions for dhclient, we simply map their variables
- # over to udhcpc style ones and call those scripts!
-
- iface_type=${1}
-
- echo ${reason}
- case "${reason}" in
- BOUND|REBOOT|REBIND) action=bound ;;
- RENEW) action=renew ;;
- RELEASE|PREINIT|FAIL|EXPIRE|TIMEOUT) action=deconfig ;;
- MEDIUM) exit 0 ;;
- esac
-
- if [[ -z ${action} ]]; then
- echo "dhclient sent an unknown action ${reason}!" >&2
- exit 1
- fi
-
- export ip=${new_ip_address}
- export subnet=${new_subnet_mask}
- export broadcast=${new_broadcast_address}
- routers=( ${new_routers} )
- export router=${routers[0]}
- export new_routers=${router}
-
- export hostname=${new_hostname}
-
- export domain=${new_domain_name}
- export dns=${new_domain_name_servers}
- export new_domain_name=${domain}
-
- export ntpsrv=${new_domain_name_servers}
-
- export nisdomain=${new_nis_domain}
- export nissrv=${new_nis_servers}
-
- export module=dhclient
-
- # Execute the dhclient script and exit with it's code
- /lib/rcscripts/net.modules.d/helpers.d/udhcpc-${iface_type} ${action}
- result="$?"
-
- [[ -e /etc/dhcp/dhclient-exit-hooks ]] \
- && ( . /etc/dhcp/dhclient-exit-hooks )
-
- exit "${result}"
-